package com.sola.oauthserver.controller;

import org.springframework.security.core.authority.AuthorityUtils;
import org.springframework.security.oauth2.provider.OAuth2Authentication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;
/**
 * 自定义一个可以获取当前user信息的接口
 *
 *
 * 这个如果自定义，会改变资源服务器中获取的principal，系统默认是User类型，如果像本类这样自定义，
 *        principal会变成map类型，但是依然无法获取更多user信息
 *
 *想要通过自定义/user接口来获取更多user信息，比如城市，省份，电话，等信息，显然不能实现。
 * */
/*
@RestController
public class UserController {

    @GetMapping(value = "user",produces = "application/json")//produces什么作用
    public Map<String,Object> userinfo(OAuth2Authentication user){
        Map<String,Object> userInfo= new HashMap<>();
        userInfo.put("user",user.getUserAuthentication().getPrincipal());
        userInfo.put("authorities",AuthorityUtils.authorityListToSet(user.getUserAuthentication().getAuthorities()));
        userInfo.put("city","苏州");
        return  userInfo;
    }
}
*/
